#include<bits/stdc++.h>
using namespace std;
map<long long,long long>Q;
long long a[200000000];
inline long long read(){
	long long x;
	scanf("%lld",&x);
	return x;
}
int main(){
	long long n=read()+4;
	a[1]=0,a[2]=a[1],a[3]=a[2],a[4]=a[3];Q[0]=1*4;
	for(long long i=5;i<=n;i++) Q[a[i]=read()]++;
	sort(a+1,a+n+1);
	long long ans;
	long long K=unique(a+1,a+n+1)-a-1;
	long long ck=0;
	for(long long i=K;i>=1;i--){
		bool brk=false;
		if(Q[a[i]]>=2&&ck!=0){
			printf("%lld\n",ck*a[i]);
			brk=true;
		}
		else if(Q[a[i]]>=4){
			printf("%lld\n",a[i]*a[i]);
			brk=true;
		}
		else if(Q[a[i]]>=2){
			ck=a[i];
		}
		if(brk) break;
	}
}